I. Field of the Disclosure
The technology of the disclosure relates to frequency generators that gauge frequency signals based on sine and cosine values.
II. Background
It is common in numerous industries to use various methods to approximate sine (sin) and/or cosine (cos) (sin-cos) wave signals from an existing or generated input signal. Such signal approximation is used for data and voice communications, including audio and visual communications in the telecommunications and entertainment industries. Other uses may include providing signals for testing equipment for development and manufacturing of electronic components, or for troubleshooting defective electronic components. One example of the use of signal approximation is implemented in a modem having a tone generator. The tone generated can be used for fast Fourier transform twiddle factor generation, frequency shift correction, and Doppler shift correction.
Various implementations of sin-cos wave signal approximation have been previously implemented to varying degrees of precision and efficiency. A common method is to provide a very large lookup table of pre-calculated (sin-cos) values, where the accuracy of the approximation is dependent upon the size of the table (i.e. the number of pre-calculated values.) Traditionally the size of the lookup table is approximately 2level of accuracy, resulting in exponentially larger tables for small increases in accuracy. In some instances, large lookup tables have been paired with linear interpolations to reduce their size. Tables of coefficients combined with polynomial curve fits have also been used to approximate curves. However, hardware cost is increased, because more tables are needed and polynomial equations increase the complexity of the calculations. Infinite Impulse Response (IIR) filters can produce sin waves, but the stability of the recursive calculation has a high rate of precision decay, even if only required for a short number of cycles.
With any of the existing methods of approximating a sin-cos wave, there is a tradeoff between accuracy, cost, and efficiency. To achieve greater accuracy, more data can be stored and/or more complex calculations can be executed. This can result in higher hardware costs based on the amount and complexity of the required hardware, and increased demands for processing time and power. Therefore, it is desirable to develop a frequency generator that can approximate sin-cos wave signals while achieving a high level of accuracy without incurring the typical increases in cost and reductions in efficiency.